Method and system for learning rules from a data base

ABSTRACT

A system and computer implemented method for learning rules from a data base including entities and relations between the entities, wherein an entity is either a constant or a numerical value, and a relation between a constant and a numerical value is a numerical relation and a relation between two constants is a non-numerical relation. The method includes: deriving aggregate values from said numerical and/or non-numerical relations; deriving non-numerical relations from said aggregate values; adding said derived non-numerical relations to the data base; constructing differentiable operators, wherein a differentiable operator refers to a non-numerical or a derived non-numerical relation of the data base, and extracting rules from said differentiable operators.

CROSS REFERENCE

The present application claims the benefit under 35 U.S.C. § 119 ofEuropean Patent Application No. EP 19199308.8 filed on Sep. 24, 2019,which is expressly incorporated herein by reference in its entirety.

FIELD

The present invention concerns a system and a computer implementedmethod for learning rules from a data base comprising entities andrelations between said entities, wherein an entity is either a constantor a numerical value, and a relation between a constant and a numericalvalue is a numerical relation and a relation between two constants is anon-numerical relation.

BACKGROUND INFORMATION

Such data bases are also known as knowledge graphs which are mainly usedfor graph-based knowledge representation by describing (real world)entities and their relations organized in a graph.

Rules over a knowledge graph capture interpretable patterns in data,such that the rules can be used for prediction, completion and cleaningof knowledge graphs. Several approaches for deriving such rules from aknowledge graph are available. However, they are limited with respect tothe treatment of numeric data.

Predictions for an entity of a data base is often based not only on itsrelation to other entities but also on a summary over a set of suchrelations commonly expressed by aggregates.

Therefore, it is desirable to learn rules from the data base, whichexpress such aggregates.

SUMMARY

This may be achieved by example devices and methods according to thepresent invention.

In accordance with an example embodiment of the present invention, acomputer implemented method for learning rules from a data basecomprising entities and relations between said entities, wherein anentity is either a constant or a numerical value, and a relation betweena constant and a numerical value is a numerical relation and a relationbetween two constants is a non-numerical relation, comprises the stepsof:

deriving aggregate values from said numerical and/or non-numericalrelations;

deriving non-numerical relations from said aggregate values;

adding said derived non-numerical relations to the data base;

constructing differentiable operators, wherein each differentiableoperator refers to a non-numerical or a derived non-numerical relationof the data base,

and extracting rules from said differentiable operators using a neuralnetwork.

An aggregate value is a single result value from a set of input values.As an aggregate value is a numerical value a relation between an entitybeing a constant and an entity being an aggregate value is a numericalrelation. Instead of adding the aggregate values as new entities in theform of numerical value to the data base non-numerical relations arederived from the aggregate values and added to the data base.

Exemplary details of constructing differentiable operators, also knownas TensorLog operators, which enable investigating reasoning over database facts in a differentiable manner to derive new facts are disclosedfor example in the following reference:

COHEN William W., YANG Fan, MAZAITIS Kathryn, “Tensorlog: Deep LearningMeets Probabilistic Databases.” CoRR, 2017, abs/1707.05390. However,this approach is limited to the treatment of numeric data.

The method according to the present invention enables advantageously tointegrate aggregate values in the rule learning process.

According to an example embodiment, the step of deriving aggregatevalues from said numerical and/or non-numerical relations comprisesapplying aggregate functions to said numerical and/or non-numericalrelations. Aggregation functions group multiple values together, and canperform a variety of operations on the grouped values to return a singleresult, herein referred to as an aggregate value.

Preferably, examples of the aggregate function include average, sum,minimum, maximum, count, and various other aggregate functions. Thecount function is preferably applied to numerical and non-numericalrelations. Further aggregate functions, for example average, sum,minimum, and maximum are preferably applied to numerical relations.

According to an example embodiment of the present invention, the step ofderiving non-numerical relations from said aggregate values comprisesencoding a numerical relation into a non-numerical relation. Thus, arelation between a constant and a numerical value is encoded into arelation between two constants.

According to an example embodiment of the present invention, the step ofencoding a numerical relation into a non-numerical relation comprisescomparing of entities with respect to numerical relations in which theentities participate. It has been proved beneficial, to compare two ormore entities with respect to numerical relations of the same type.Typically, the comparison with respect to numerical relations ofdifferent types is irrelevant.

The above cited reference describes exemplary details of constructingdifferentiable operators, also known as TensorLog operators, wherein inTensorLog all entities are mapped to integers, and each entity i isassociated with a one-hot encoded vector v_(i) such that only it's i-thentry is 1 and the other entries are zeros.

According to an example embodiment of the present invention, the step ofconstructing differentiable operators comprises constructing matrices,wherein a matrix refers to a non-numerical relation. Preferably, amatrix is constructed for every non-numerical relation. Preferably, thematrix is an i-by-i matrix, wherein an entry (j, k) is non-zero, forexample 1, if the relation is a relation between the entity j and entityk, otherwise an entry is zero.

According to an example embodiment of the present invention, the step ofconstructing differentiable operators comprises constructing negateddifferentiable operators. Preferably, constructing negateddifferentiable operators comprises constructing negated matrices,wherein a negated matrix refers to a negated non-numerical relation. Thenegation of a matrix can be obtained by flipping all zeros to ones andvice versa such that the corresponding (sparse) matrix results in adense matrix. Since dense matrices cannot be materialized in TensorLog,negated relations are not supported directly by the approach known fromthe cited reference. Therefore, according to a preferred embodiment ofthe present invention, the construction of negated differentiableoperators comprises constructing negated matrices by flipping only theelements in such rows that contain at least one non-zero element.

According to an example embodiment of the present invention, the step ofextracting rules from the differentiable operators comprises using anartificial neural network, particularly an artificial neural networkconstructed based on neural logic programming, LP, framework.

Exemplary details of the neural logic programming, LP, framework and thetraining of such a framework for learning rules are disclosed forexample in the following reference:

YANG Fan, YANG Zhilin and COHEN, William W., “Differentiable Learning ofLogical Rules for Knowledge Base Reasoning.” NeurIPS, 2017, pages 2316to 2325.

According to an example embodiment of the present invention, the stepextracting rules from said differentiable operators using a neuralnetwork is restricted by a maximum number of relations allowed in arule.

According to an example embodiment of the present invention, the rulesextracted from the differentiable operators are horn rules, wherein saidmethod further comprises the step of decoding said rules into decodedrules. The horn rules extracted from the differentiable operators usingthe neural logic programming, LP, framework do not comprise theaggregate values and/or negations. By decoding the horn rules, they canbe advantageously decoded into rules with aggregate values and/or ruleswith negations.

According to an example embodiment of the present invention, the methodfurther comprises the step of applying said rules and/or said decodedrules to predict one or more relations between two or more entities ofthe data base.

The present invention also concerns an example system configured forlearning rules from a data base comprising entities and binary relationsbetween said entities, wherein the system comprises a processing unitconfigured to perform the method according to any of the embodiments.The processing unit may be a distributed computing system, amicroprocessor or a microcontroller.

According to an example embodiment of the present invention, the systemcomprises a memory, in particular computer readable non-volatile memory,wherein the processing unit and the memory interact via a data line.

According to an example embodiment of the present invention, the memorycomprises computer readable instructions that when executed by theprocessing unit cause the processing unit to execute the method forlearning rules from a data base according to the above describedembodiments.

According to an example embodiment of the present invention, the systemmay comprise the database or connect to a further memory in which thedata base is stored such that the processing unit has access to the dataof the data base when performing the method according to theembodiments.

According to an example embodiment of the present invention, the systemfurther comprises a processing unit and a memory unit for an artificialneural network, particularly an artificial neural network constructedbased on neural logic programming (neural LP) framework, configured toperform the step according to an embodiment.

Exemplary details of the neural logic programming, LP, framework and thetraining of such a framework for learning rules are disclosed in theabove cited reference.

The present invention also concerns a computer program, wherein thecomputer program comprises computer readable instructions that whenexecuted by a computer cause the computer to execute the methodaccording to the embodiments.

The present invention also concerns a computer program product, whereinthe computer program product comprises a computer readable storagemedium comprising the computer program according to the embodiments.

The present invention also concerns use of a method according to theembodiments and/or a system according to the embodiments and/or acomputer program according to the embodiments and/or a computer programproduct according to the embodiments for predicting relations betweenentities of a data base and/or cleaning of a data base and/or completionof a data base.

Further advantageous embodiments of the present invention are derivedfrom the following description and the figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a schematic view of a data base according to a firstembodiment of the present invention.

FIG. 2 depicts a schematic view of a data base according to a secondembodiment of the present invention.

FIG. 3 depicts first aspects of computer-implemented method for learningrules from a data base in accordance with an example embodiment of thepresent invention.

FIG. 4 depicts aspects of a system configured for learning rules from adata base in accordance with an example embodiment of the presentinvention.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

FIG. 1 depicts a schematic view of a data base 100 according to a firstembodiment of the present invention.

Such data bases 100 are also known as knowledge graphs which are mainlyused for graph-based knowledge representation by describing (real world)entities and their relations organized in a graph.

It should be noted that FIG. 1 is an exemplary schematic extract of adata base 100 to allow for describing by example the method and systemof the present invention, wherein the method and system described hereincan be applied to large-scale real world knowledge graphs, which maycontain millions and billions of facts.

According to the example embodiment, the data base 100 comprisesentities 110 and relations 120 between the entities 110. Entities C1,C2, C3, C4, C5, C6 and C7 of the data base 100 are constants. EntitiesN1, N2, N3 are numerical values. A relation 120 between a constant and anumerical value is referred to as a numerical relation and a relation120 between two constants is referred to as a non-numerical relation.

For example, entity C3 is a first person and entity C4 is a secondperson. Entity C1 is a first article and entity C2 is a second article.The relation 120 a between the entity C3 and the entity C2 is forexample “cited in”, which in this case means that the first person iscited in the first article. Further, the relation 120 a between theentity C4 and the entity C1 as well as the relation 120 a between theentity C4 and the entity C2 is for example also “cited in”, which inthis means that the second person is cited in the first article as wellas in the second article. According to this example, the relation 120 ais a non-numerical relation.

For example, entity C6 is a first patent and entity C7 is a secondpatent. Numerical value N1 has the value “1”, numerical value N2 has thevalue “2” and numerical value N3 has the value “3”. The relation 120 bbetween the entity C6 and the entity N1 as well as the relation 120 bbetween the entity C6 and the entity N2 is for example “has Rating”,which means in this case that the first patent has rating “1” as well asrating “2”. Further, the relation 120 b between the entity C7 and theentity N2 as well as the relation 120 b between the entity C7 and theentity N3 is for example “has Rating”, which means in this case that thesecond patent has rating “2” as well as rating “3”. According to thisexample, the relation 120 b is a numerical relation.

Rules over a data base 100 capture interpretable patterns in data, suchthat the rules can be used for prediction, completion and cleaning ofthe data base 100. Predictions for an entity 110 of a data base 100 isoften based not only on its relation 120 to other entities 110 but alsorather on a summary over a set of such relations commonly expressed byaggregates.

Therefore, it is desirable to learn rules from the data base, whichexpress such aggregates.

FIG. 3 depicts first aspects of computer-implemented method 200 forlearning rules from a data base 100 in accordance with an exampleembodiment of the present invention.

According to one aspect of the present invention, when the computerimplemented method 200 starts, a step 210 of deriving aggregate valuesfrom said numerical and/or non-numerical relations of the data base 100is executed. An aggregate value is a single result value from a set ofinput values.

According to one aspect of the present invention, the step of deriving210 aggregate values from said numerical and/or non-numerical relationscomprises applying aggregate functions on said numerical and/ornon-numerical relations. Aggregate functions compute a single resultvalue, aggregate value, from a set of input values. Preferably, examplesof the aggregate function include average, sum, minimum, maximum, count,and various other aggregate functions the count function is preferablyapplied to numerical and non-numerical relations. Further aggregatefunctions, for example average, sum, minimum and maximum, are preferablyapplied to numerical relations.

Applying the step 210 to the above described example means for exampleapplying the count function to the non-numerical relation 120 a “citedin”.

Entity C3 is cited once and entity C4 is cited twice. According to thisexample, the aggregate value “1” and “2” are derived from the relation120 a.

Further, applying the average function to the numerical relation 120 b“has rating” results in aggregate value “1.5” for entity C6 andaggregate value “2.5” for entity C7.

Afterwards, step 220 is executed.

In the step 220, non-numerical relations are derived from said aggregatevalues.

As an aggregate value is a numerical value a relation between an entitybeing a constant and an entity being an aggregate value is a numericalrelation. Instead of adding the aggregate values as new entities in theform of numerical value to the data base 100 in step 220 non-numericalrelations are derived from the aggregate values.

According to one aspect of the present invention, the step of deriving220 non-numerical relations from said aggregate values comprisesencoding a numerical relation into a non-numerical relation. Thus, arelation between a constant and a numerical value is encoded into arelation between two constants.

According to one aspect of the present invention, the step of encoding anumerical relation into a non-numerical relation comprises comparing ofentities with respect to numerical relations in which the entitiesparticipate. It has been proved beneficial to compare two or moreentities with respect to numerical relations of the same type.Typically, the comparison with respect to numerical relations ofdifferent types is irrelevant.

Applying the step 210 to the above described example means for exampleto compare entity C6 and C7 with regard to their average ratings. Asentity C6 comprises an average rating of “1.5” and entity C7 comprisesan average rating of “2.5”, a non-numerical relation of “less rated” or“more rated” respectively can be derived from these aggregate values.

Further, applying the step 210 to the above described example means forexample to compare entity C3 and C4 with regard to the amount ofcitations. As entity C3 is cited once and C4 is cited twice anon-numerical relation of “more cited” or “less cited” respectively canbe derived from the aggregate values.

Afterwards, step 230 is executed.

In the step 230, the non-numerical relations derived from the aggregatevalues are added to the data base. Instead of adding the aggregatevalues as new entities in the form of numerical value to the data basenon-numerical relations are derived from the aggregate values asdescribed above and then added to the data base.

FIG. 2 depicts a data base 100 according to a second embodiment of thepresent invention, wherein derived non-numerical relations 130 has beenadded.

With reference to the example above, the derived non-numerical relation130 a “more cited” between entity C4 and C3 and the derivednon-numerical relation 130 b “less rated” between the entity C6 and C7have been added.

Afterwards, 240 is executed.

In the step 240, differentiable operators are constructed, wherein adifferentiable operator refers to a non-numerical relation or a derivednon-numerical relation of the data base.

Exemplary details of constructing differentiable operators, also knownas TensorLog operators, which enable investigating reasoning over database facts in a differentiable manner to derive new facts are disclosedfor example in the following reference:

COHEN William W., YANG Fan, MAZAITIS Kathryn, Tensorlog: “Deep LearningMeets Probabilistic Databases.” CoRR, 2017, abs/1707.05390, whichconnects rule application with sparse matrix multiplications. InTensorLog all entities are mapped to integers, and each entity i isassociated with a one-hot encoded vector v_(i) such that only it's i-thentry is 1 and the other entries are zeros.

According to one aspect of the present invention, the step ofconstructing 240 differentiable operators comprises constructingmatrices M_(R), wherein a matrix M_(R) refers to a non-numericalrelation. Preferably, for every non-numerical relation a Matrix M_(R) isconstructed. Preferably, the matrix M_(R) is an i-by-i matrix, whereinan entry (j, k) is non-zero, for example 1, if the relation is arelation between the entity j and the entity k, otherwise the entry iszero.

According to one aspect of the present invention, the step ofconstructing 240 differentiable operators comprises constructing negateddifferentiable operators. Preferably, constructing negateddifferentiable operators comprises constructing negated matricesM_(Rneg), wherein a matrix M_(Rneg) refers to a negated non-numericalrelation. The negation of a matrix M_(R) can be obtained by flipping allzeros to ones and vice versa such that the corresponding (sparse) matrixM_(R) results in a dense matrix. Since dense matrices cannot bematerialized in TensorLog, negated relations are not supported directlyby the approach known from the cited reference. Therefore, to constructnegated differentiable operators, the negated matrices M_(Rneg) areconstructed by flipping only the elements in such rows that contain atleast one non-zero element. The construction of the negateddifferentiable operators is performed under the assumption that it canbe only concluded that a negated relation between a pair of entities istrue if their already exist an associated non negated relation betweenthis pair of entities. Otherwise, the negated relation remains unknown.

Afterwards, 250 is executed.

In the step 250, rules are extracted from said differentiable operators.

According to one aspect of the present invention, the step of extracting250 rules from the differentiable operators comprises using anartificial neural network, particularly an artificial neural networkconstructed based on neural logic programming, LP, framework.

Exemplary details of the neural logic programming, LP, framework and thetraining of such a framework for learning rules are disclosed forexample in the following reference:

ZHANG Fan, YANG Zhilin and COHEN, William W., “Differentiable Learningof Logical Rules for Knowledge Base Reasoning.” NeurIPS, 2017, pages2316 to 2325.

In contrast to the approaches described in the above cited references,the example computer-implemented method 200 in accodance with thepresent invention has the following advantages:

By performing the steps of deriving 210 aggregate values from saidnumerical and/or non-numerical relations, deriving 220 non-numericalrelations from said aggregate values, adding 230 said derivednon-numerical relations to the data base and constructing 240differentiable operators based on a derived non-numerical relation, thepresent invention allows to compile numerical relations intodifferentiable operators. Therefore, the method according to the presentinvention enables to utilize a respective comparison informationeffectively and incorporate it into the rule learning process.

In contrast, the direct incorporation of numerical relations into thedifferentiable operators would result in dense matrices, wherein theirmaterialization and storage in the memory of a processor is unfeasible.

Further, the present invention allows to construct negateddifferentiable operators which can be materialized in the approachesknown from prior art.

According to one aspect of the present invention, the rules extractedfrom the differentiable operators are horn rules, and the method 200further comprises the step of decoding 260 said rules into decodedrules. The horn rules extracted from the differentiable operators usingthe neural logic programming, LP, framework do not comprise theaggregate values and/or negations. By decoding 260 the horn rules, theycan by advantageously decoded into rules with aggregate values and/ornegations.

For example, a rule which can be extracted by method 200 can be forexample “a person is influenced by a person which is cited more often inan article than another person”. After decoding, this rule reads to “aperson is influenced by a person which is cited at least two times in anarticle”.

A further rule which can be extracted by method 200 can be for example“a patent is relevant for a person, if this patent has a higher ratingthan another patent”. After decoding, this rule reads to “a patent whichis has a higher rating than 2 is relevant for a person.”

According to one aspect of the present invention, the method 200 furthercomprises the step of applying 270 said rules and/or said decoded rulesto predict one or more relations 140 between two or more entities 110 ofthe data base 100. Referring now to FIG. 2, for example relations 140between entity C4 and entity C5 and between entity C5 and entity C7 havebeen predicted by applying 210 the rules.

Referring again to the above described example, a rule that can beextracted and/or decoded by method 200 can be for example “a person isinfluenced by a person which is cited at least two times in an article”.Entity C3 is cited once and entity C4 is cited twice. Applying now therule to the data base 100 we can predict the relation 140 a “influences”between entity C4 and C5. Another rule can be for example “a patentwhich is has a higher rating than 2 is relevant for a person”. Entity C6has rating “1.5” and entity C7 has rating “2.5”. Applying now the ruleto the data base 100 we can be predict the relation 140 b “is relevant”between entity C7 and C5.

According to one aspect of the present invention, the method 200 may beperformed by a system 300 configured for learning rules from a data base100 comprising entities 110 and binary relations 120 between saidentities as depicted in FIG. 4.

In one aspect of the present invention depicted in FIG. 4, the system300 comprises a processing unit 310 configured to perform the method 200according to embodiments.

In one aspect of the present invention, the system comprises a memory320, in particular computer readable non-volatile memory 320, whereinthe processing unit 310 and the memory 320 interact via a data line 330.The processing unit 310 may be a distributed computing system, amicroprocessor or a microcontroller.

In one aspect of the present invention, the memory 320 comprisescomputer readable instructions that when executed by the processing unit310 cause the processing unit 310 to execute the method 200 for learningrules from a data base according to the above described embodiments.

In one aspect of the present invention, the system 300 may comprise thedatabase 100 or connect to a further memory, not depicted in FIG. 4, inwhich the data base 100 is stored such that the processing unit 310 hasaccess to the data of the data base 100 when performing the method 200.

According to one aspect of the present invention, the system 300 furthercomprises a processing unit 340 and a memory 350 for an artificialneural network, configured to perform the step 250 of extracting rulesfrom said differentiable operators as described above.

In one aspect of the present invention, the processing 340 for theartificial network is connect via a data line 330 with the memory 320.

In one aspect of the present invention, the artificial neural network isconstructed based on neural logic programming, LP, framework. Exemplarydetails of the neural logic programming, LP, framework and the trainingof such a framework for learning rules are disclosed for example in theabove cited reference.

In one aspect of the present invention, a method 200 according to theabove described embodiments and/or a system 300 according to the abovedescribed embodiments and/or a computer program according to the abovedescribed embodiments and/or a computer program product according to theabove described embodiments may be used for predicting relations 120between entities 110 of a data base 100 and/or cleaning of a data base100 and/or completion of a data base 100.

What is claimed is:
 1. A computer implemented method for learning rulesfrom a data base, the data base including entities and relations betweenthe entities, wherein each of the entities is either a constant or anumerical value, and a relation between a constant and a numerical valueis a numerical relation and a relation between two constants is anon-numerical relation, the method comprising the following steps:deriving aggregate values from the numerical relations and/or thenon-numerical relations; deriving non-numerical relations from theaggregate values; adding the derived non-numerical relations to the database; constructing differentiable operators, wherein each of thedifferentiable operators refers to a non-numerical or a derivednon-numerical relation of the data base; and extracting rules from thedifferentiable operators.
 2. The method according to claim 1, whereinthe step of deriving the aggregate values from the numerical relationsand/or the non-numerical relations includes applying aggregate functionson the numerical relations and/or the non-numerical relations.
 3. Themethod according to claim 1, wherein the step of deriving thenon-numerical relations from the aggregate values includes encoding anumerical relation into a non-numerical relation.
 4. The methodaccording to claim 4, wherein the step of encoding the numericalrelation into the non-numerical relation includes comparing entitieswith respect to numerical relations in which the entities participate.5. The method according to claim 1, wherein the step of constructing thedifferentiable operators includes constructing matrices, wherein each ofthe matrices refers to a non-numerical relation.
 6. The method accordingto claim 1, wherein the step of constructing the differentiableoperators includes constructing negated differentiable operators, thenegated differentiable operators including negated matrices, wherein anegated matrix refers to a negated non-numerical relation.
 7. The methodaccording to claim 1, wherein the step of extracting rules from thedifferentiable operators includes using an artificial neural networkbased on neural logic programming (LP) framework.
 8. The methodaccording to claim 1, wherein the rules extracted from thedifferentiable operators are horn rules, and wherein the method furthercomprises the step of decoding the rules into decoded rules.
 9. Themethod according to claim 8, wherein the method further includes thestep of applying the rules and/or the decoded rules to predict one ormore relations between two or more entities of the data base.
 10. Asystem configured for learning rules from a data base, the data baseincluding entities and binary relations between the entities, whereineach of the entities is either a constant or a numerical value, and arelation between a constant and a numerical value is a numericalrelation and a relation between two constants is a non-numericalrelation, the system comprising: a processing unit configured to: deriveaggregate values from the numerical relations and/or the non-numericalrelations; derive non-numerical relations from the aggregate values; addthe derived non-numerical relations to the data base; constructdifferentiable operators, wherein each of the differentiable operatorsrefers to a non-numerical or a derived non-numerical relation of thedata base; and extract rules from the differentiable operators.
 11. Thesystem according to claim 10, further comprising: a processing unit anda memory unit for an artificial neural network configured to extract therules from the differentiable operators.
 12. The system according toclaim 11, wherein the artificial neural network is constructed based ona neural logic programming (LP) framework.
 13. A non-transitory computerreadable storage medium on which is stored a computer program forlearning rules from a data base, the data base including entities andrelations between the entities, wherein each of the entities is either aconstant or a numerical value, and a relation between a constant and anumerical value is a numerical relation and a relation between twoconstants is a non-numerical relation, the computer program, whenexecuted by a computer, causing the computer to perform the followingsteps: deriving aggregate values from the numerical relations and/or thenon-numerical relations; deriving non-numerical relations from theaggregate values; adding the derived non-numerical relations to the database; constructing differentiable operators, wherein each of thedifferentiable operators refers to a non-numerical or a derivednon-numerical relation of the data base; and extracting rules from thedifferentiable operators.
 14. A method, comprising: providing a systemconfigured for learning rules from a data base, the data base includingentities and binary relations between the entities, wherein each of theentities is either a constant or a numerical value, and a relationbetween a constant and a numerical value is a numerical relation and arelation between two constants is a non-numerical relation, the systemincluding: a processing unit configured to: derive aggregate values fromthe numerical relations and/or the non-numerical relations; derivenon-numerical relations from the aggregate values; add the derivednon-numerical relations to the data base; construct differentiableoperators, wherein each of the differentiable operators refers to anon-numerical or a derived non-numerical relation of the data base; andextract rules from the differentiable operators; using the system topredict relations between entities of the data base and/or clean thedata base and/or complete the data base.